//
//  NSString+MFBase64.m
//  24-加密
//
//  Created by mafeng on 16/8/16.
//  Copyright © 2016年 mafeng. All rights reserved.
//

#import "NSString+MFBase64.h"

@implementation NSString (MFBase64)

// 1. Base 编码格式 一般应用于少量数据的编码

// 编码

- (NSString *)stringWithBase64 {
    // 字符串 转 data
    NSData *stringData = [self dataUsingEncoding:NSUTF8StringEncoding];
    // data 进行 base编码, 生成字符串
    NSString *baseString = [stringData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
    return baseString;
}

// 解码

- (NSString *)base64WithString {
    // 根据Base64字符串, 生成data
    NSData *base64Data = [self base64StringWithData];
    // 将 data 转为 字符串
    NSString *orginString = [[NSString alloc] initWithData:base64Data encoding:NSUTF8StringEncoding];
    return orginString;
}
 //
- (NSData *)base64StringWithData {
    return [[NSData alloc] initWithBase64EncodedString:self options:NSDataBase64DecodingIgnoreUnknownCharacters];
}

@end
